<?php
namespace Home\Controller;
use Think\Controller;
/*
注册
*/
class RegistrationController extends Controller
{
	
	function registration()
	{
		$_validate = array(
        	array('verify', 'checkVerify', '验证码错误！', 0, 'function'),//验证码
        	array('name', 'require', '用户名不能为空！'), //默认情况下用正则进行验证
        	array('name', '', '该用户名已被注册！', 0, 'unique', 1), // 在新增的时候验证name字段是否唯一
        	array('email', '', '该邮箱已被占用', 0, 'unique', 1), // 新增的时候email字段是否唯一
        	array('mobile', '', '该手机号码已被占用', 0, 'unique', 1), // 新增的时候mobile字段是否唯一
        	// 正则验证密码 [需包含字母数字以及中的一种,长度为6-22位]
        	array('password', '/^([a-zA-Z0-9]{6,22})$/', '密码格式不正确,请重新输入！', 0),	
        	array('repassword', 'password', '确认密码不正确', 0, 'confirm'), // 验证确认密码是否和密码一致
			array('sex', 'require', '性别不能为空！'), //性别不能为空
        	array('email', 'email', '邮箱格式不正确'), // 内置正则验证邮箱格式
        	array('phone', '/^1[34578]\d{9}$/', '手机号码格式不正确', 0), // 正则表达式验证手机号码
        	//array('verify', 'verify_check', '验证码错误', 0, 'function'), // 判断验证码是否正确
    	);

		if (IS_POST) {
            // 实例化User对象
            $user = M('user_table');
            // 自动验证 创建数据集
			$data["name"] = $_POST["username"];
            $data["password"] = $_POST["password"];
			$data["repassword"] = $_POST["repassword"];
			$data["access"]=$_POST["kind"];
			$data["gender"]=$_POST["sex"];
			$data["verify"] = $_POST['verify'];
			$data["phone"]=$_POST["phone"];
            $data["email"] = $_POST["email"];	
			$data["last_login_time"]=date("y-m-d H:i:s");
			if (!$result = $user->validate($_validate)->create()) {
                // 防止输出中文乱码
                header("Content-type: text/html; charset=utf-8");
				$this->redirect('Index/regis_return', array('regis_type'=>1,'error'=>$user->getError()), 0);
                //exit($user->getError());
            }
			if ($user->add($data))
			{
				$this->redirect('Index/regis_return', array('regis_type'=>3), 0);
			}
			else
			{
				$this->redirect('Index/regis_return', array('regis_type'=>2), 0);
			}
		    
		}
	}
	
}
